{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "sns.set()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['../dataset/AMD.csv',\n",
       " '../dataset/FB.csv',\n",
       " '../dataset/TSLA.csv',\n",
       " '../dataset/TWTR.csv',\n",
       " '../dataset/MONDY.csv']"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "directory = '../dataset/'\n",
    "stocks = ['AMD.csv', 'FB.csv', 'TSLA.csv', 'TWTR.csv', 'MONDY.csv']\n",
    "stocks = [directory + s for s in stocks]\n",
    "stocks"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "dfs = [pd.read_csv(s)[['Date', 'Close']] for s in stocks]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Close_x</th>\n",
       "      <th>Close_y</th>\n",
       "      <th>Close_x</th>\n",
       "      <th>Close_y</th>\n",
       "      <th>Close</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>16.270000</td>\n",
       "      <td>207.320007</td>\n",
       "      <td>318.869995</td>\n",
       "      <td>44.490002</td>\n",
       "      <td>56.889999</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>16.580000</td>\n",
       "      <td>207.229996</td>\n",
       "      <td>310.100006</td>\n",
       "      <td>44.259998</td>\n",
       "      <td>56.639999</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>16.870001</td>\n",
       "      <td>209.990005</td>\n",
       "      <td>322.690002</td>\n",
       "      <td>44.709999</td>\n",
       "      <td>57.730000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>16.850000</td>\n",
       "      <td>209.360001</td>\n",
       "      <td>323.850006</td>\n",
       "      <td>43.340000</td>\n",
       "      <td>57.810001</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>16.709999</td>\n",
       "      <td>208.089996</td>\n",
       "      <td>320.230011</td>\n",
       "      <td>43.439999</td>\n",
       "      <td>52.380001</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     Close_x     Close_y     Close_x    Close_y      Close\n",
       "0  16.270000  207.320007  318.869995  44.490002  56.889999\n",
       "1  16.580000  207.229996  310.100006  44.259998  56.639999\n",
       "2  16.870001  209.990005  322.690002  44.709999  57.730000\n",
       "3  16.850000  209.360001  323.850006  43.340000  57.810001\n",
       "4  16.709999  208.089996  320.230011  43.439999  52.380001"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from functools import reduce\n",
    "data = reduce(lambda left,right: pd.merge(left,right,on='Date'), dfs).iloc[:, 1:]\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "returns = data.pct_change()\n",
    "mean_daily_returns = returns.mean()\n",
    "cov_matrix = returns.cov()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Close_x</th>\n",
       "      <th>Close_y</th>\n",
       "      <th>Close_x</th>\n",
       "      <th>Close_y</th>\n",
       "      <th>Close</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Close_x</th>\n",
       "      <td>0.002342</td>\n",
       "      <td>0.000316</td>\n",
       "      <td>0.000368</td>\n",
       "      <td>0.000387</td>\n",
       "      <td>0.000215</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Close_y</th>\n",
       "      <td>0.000316</td>\n",
       "      <td>0.000694</td>\n",
       "      <td>0.000216</td>\n",
       "      <td>0.000463</td>\n",
       "      <td>0.000043</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Close_x</th>\n",
       "      <td>0.000368</td>\n",
       "      <td>0.000216</td>\n",
       "      <td>0.001643</td>\n",
       "      <td>0.000516</td>\n",
       "      <td>0.000004</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Close_y</th>\n",
       "      <td>0.000387</td>\n",
       "      <td>0.000463</td>\n",
       "      <td>0.000516</td>\n",
       "      <td>0.001240</td>\n",
       "      <td>0.000177</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Close</th>\n",
       "      <td>0.000215</td>\n",
       "      <td>0.000043</td>\n",
       "      <td>0.000004</td>\n",
       "      <td>0.000177</td>\n",
       "      <td>0.000985</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          Close_x   Close_y   Close_x   Close_y     Close\n",
       "Close_x  0.002342  0.000316  0.000368  0.000387  0.000215\n",
       "Close_y  0.000316  0.000694  0.000216  0.000463  0.000043\n",
       "Close_x  0.000368  0.000216  0.001643  0.000516  0.000004\n",
       "Close_y  0.000387  0.000463  0.000516  0.001240  0.000177\n",
       "Close    0.000215  0.000043  0.000004  0.000177  0.000985"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "cov_matrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "num_portfolios = 25000\n",
    "results = np.zeros((3,num_portfolios))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "for i in range(num_portfolios):\n",
    "    weights = np.random.random(cov_matrix.shape[0])\n",
    "    weights /= np.sum(weights)\n",
    "    portfolio_return = np.sum(mean_daily_returns * weights) * 252\n",
    "    portfolio_std_dev = np.sqrt(np.dot(weights.T,np.dot(cov_matrix, weights))) * np.sqrt(252)\n",
    "    results[0,i] = portfolio_return\n",
    "    results[1,i] = portfolio_std_dev\n",
    "    results[2,i] = results[0,i] / results[1,i]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "results_frame = pd.DataFrame(results.T,columns=['ret','stdev','sharpe'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize = (7, 5))\n",
    "plt.scatter(results_frame.stdev,results_frame.ret,c=results_frame.sharpe,cmap='RdYlBu')\n",
    "plt.colorbar()\n",
    "plt.xlabel('volatility')\n",
    "plt.ylabel('returns')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
